package com.hxzy.service;

import com.hxzy.controller.mobile.cart.req.CartAddReq;
import com.hxzy.controller.mobile.cart.req.MobileAddCartNumReq;
import com.hxzy.controller.mobile.cart.resp.MobileCartResp;
import com.hxzy.entity.ShoppingCart;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author 11452
* @description 针对表【shopping_cart(购物车)】的数据库操作Service
* @createDate 2023-08-28 11:54:55
*/
public interface ShoppingCartService extends IService<ShoppingCart> {

    /**
     * 查询当前用户该商家的购物车
     * @param merchantId
     * @return
     */
    List<MobileCartResp> findByMerchantId(Long merchantId);

    /**
     * 加入购物车
     * @param req
     * @return  返回购物车商品的数量
     */
    Integer cartAdd(CartAddReq req);

    /**
     * 减少购物车商品数量
     * @param req
     * @return 返回购物车商品的数量
     */
    Integer subCarNum(MobileAddCartNumReq req);

    /**
     * 增加购物车购库数量
     * @param req
     * @return
     */
    Integer addCarNumApi(MobileAddCartNumReq req);

    /**
     * 清空购物车
     * @param merchantId
     * @return
     */
    boolean cleanCart(Long merchantId);
}
